package com.crs.mapper;

import com.crs.dto.ResourcesPageQueryDTO;
import com.crs.entity.Resource;
import com.crs.result.PageResult;
import com.crs.vo.ResourceListVo;
import com.github.pagehelper.Page;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

import java.util.List;

@Mapper
public interface ResourceMapper {

    /**
     * 插入资源
     * @param resource
     */
    void insert(Resource resource);

    /**
     * 查看资源列表
     */
    List<ResourceListVo> list(ResourcesPageQueryDTO resourcesPageQueryDTO);


    /**
     * 动态sql查找资源
     * @param
     * @return
     */
    ResourceListVo detail(Integer id);

    /**
     * 获取分页数量
     * @param resourcesPageQueryDTO
     * @return
     */

    Long getTotalCount(ResourcesPageQueryDTO resourcesPageQueryDTO);

    /**
     * 判断资源是否可借用
     * @param resourceId
     * @return
     */
    @Select("select status from resource where id = #{resourceId}")
    int findStatus(Long resourceId);

    /**
     * 更新资源状态为可借用状态
     * @param resourceId
     */
    @Update("update resource set status = #{status} where id = #{resourceId}")
    void updateStatus(Integer status,Long resourceId);
}
